#ifndef __PAGE_H
#define __PAGE_H

#include <linux_list.h>
#include <gobjs.h>

typedef struct page {
	struct list_head gobj_link_root;
	GOBJ *pg_background;
	u32 gobj_counter;
} PAGE;

typedef struct page_list {
	PAGE *page;
	struct list_head list;
} PAGE_LIST;


PAGE * PGCreate(void);
int PGDisplay(PAGE *);
void PGAddGObj(PAGE *, GOBJ *);
void PGSetBackground(PAGE *this_page, u8 *bg_img, COLOR *bg_color);
int PGPushGObjTop(PAGE *this_page, GOBJ *gobj);
int PGPushGObjBottom(PAGE *this_page, GOBJ *gobj);
int PGPushGObjUp(PAGE *this_page, GOBJ *gobj);
int PGPushGObjDown(PAGE *this_page, GOBJ *gobj);

#endif
